package cn.wolfcode.wolf2w.search.service;


import cn.wolfcode.wolf2w.destination.api.domain.Destination;
import cn.wolfcode.wolf2w.search.api.domain.DestinationEs;
import cn.wolfcode.wolf2w.search.query.SearchQueryObject;
import org.springframework.data.domain.Page;

import java.util.List;

public interface IDestinationEsService {
    /** 添加
    * @param destination
    * @return
     */
    void save(DestinationEs destination);

    /**
     * 更新
     * @param destination
     * @return
     */
    void update(DestinationEs destination);

    /**
     * 查单个
     * @param id
     * @return
     */
    DestinationEs get(String id);

    /**
     * 查多个
     * @return
     */
    List<DestinationEs> list();

    /**
     * 删除
     * @param id
     */
    void delete(String id);


    /**
     * 按照 目的地名称, 简介 分页查询数据
     * @param qo
     * @return
     */
    Page<Destination> queryByKeyWord(SearchQueryObject qo);

    /**
     * 初始化ES数据
     */
    void initDestinationEs();
}
